/*
 * Cute4jCommon.h  0.4.0 / Nov 5, 2010
 *
 * Copyright (c) 2010 - 2011, cute4j.com and contributors.
 *
 * This software is licensed under the LGPL version 2.1 license.
 * A copy of this license is included in the file LICENSE-LGPL.txt.
 */
#ifndef CUTE4JCOMMON_H
#define CUTE4JCOMMON_H

/*!
 * \mainpage Cute4j
 *
 * <p>Qt libraries for Java developers.</p>
 * <br/>
 */

/*!
 * \brief Common header file for all modules.
 *
 * \author Slobodan Vrkacevic
 * \version 0.4.0
 */

// Cute4jCommon :: Includes. ---------------------------------------------------

#include <QGlobalStatic>
#include <QString>

#include "jni.h"

// Cute4jCommon :: Global Definitions. -----------------------------------------

#ifndef JNI_VERSION_1_4
  #error "No suitable JNI version"
#endif 

#define CUTE4J_JNI_VERSION  JNI_VERSION_1_4

#ifdef CUTE4J_LIB
  #define CUTE4J_EXPORT  Q_DECL_EXPORT
#else
  #define CUTE4J_EXPORT
#endif // CUTE4J_LIB

#ifdef CUTE4J_DEBUG
  #include <iostream>
  #define sout(string) std::cout << string << std::endl
  #define snl std::cout << std::endl
  #include <QDebug>
#endif // CUTE4J_DEBUG

#ifdef USE_PLATFORM_CODE
  #ifdef Q_OS_WIN32
    #define USE_WIN32_CODE
  #endif // Q_OS_WIN32
  #ifdef Q_OS_LINUX
    #define USE_LINUX_CODE
  #endif // Q_OS_LINUX
#endif // USE_PLATFORM_CODE

#define BEGIN_NAMESPACE_CUTE4J namespace Cute4j {
#define END_NAMESPACE_CUTE4J }

// Cute4jCommon :: Global Functions. -------------------------------------------

BEGIN_NAMESPACE_CUTE4J

void ErrorMessage(const char *title, const char *message);

void WarningMessage(const char *title, const char *message);

void InformationMessage(const char *title, const char *message);

END_NAMESPACE_CUTE4J

#endif // CUTE4JCOMMON_H

